package Controleur;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import Vue.AjoutStation;
import Vue.Map;

/**
 * Définit l'écouteur de bouton du choix des coordonnées par click sur map
 */
public class AjoutStationCarteListener implements ActionListener {

	/** La vue de l'ajout d'une station */
	private AjoutStation vueAjoutStation;
	/** La map */
	private Map map;

	/**
	 * Instancie l'écouteur de bouton du choix des coordonnées par click sur map
	 * 
	 * @param ajoutStation
	 *            La vue de l'ajout d'une station
	 * @param map
	 *            La map
	 */
	public AjoutStationCarteListener(AjoutStation ajoutStation, Map map) {
		this.map = map;
		this.vueAjoutStation = ajoutStation;
	}

	/**
	 * Action lors de l'évenement
	 * 
	 * @param e
	 *            Objet de l'évenement
	 */
	@Override
	public void actionPerformed(ActionEvent e) {

		map.addMouseListener(new Map_event(map, vueAjoutStation, this));

	}

	/**
	 * Validation des champs de l'ajout d'une station
	 */
	public void ajoutStation_estValide() {
		if (vueAjoutStation.getField_NomStation().getText().isEmpty()
				|| vueAjoutStation.getField_NbMaxVelo().getText().isEmpty()
				|| vueAjoutStation.getField_X().getText().isEmpty()
				|| vueAjoutStation.getField_Y().getText().isEmpty()) {
			vueAjoutStation.getLblToutesLesDonnes().setForeground(
					vueAjoutStation.getRed());
			vueAjoutStation.getLblToutesLesDonnes().setText(
					"Toutes les donn\u00E9es ne sont pas bien remplies.");
			vueAjoutStation.getBtnValider().setEnabled(false);

		} else {
			vueAjoutStation.getLblToutesLesDonnes().setForeground(
					vueAjoutStation.getGreen());
			vueAjoutStation.getLblToutesLesDonnes().setText(
					"Données correctes.");
			vueAjoutStation.getBtnValider().setEnabled(true);
		}
	}

}
